// pages/user/supplier-core/supplier-core.js
let app = getApp();
const moment = require('../../../utils/moment.min.js')
Page({

  /**
   * 页面的初始数据
   */
  data: {
    user: '',
    tabActive: 0,
    tabList: [{
      name: '今日销量',
      status: 0
    }, {
      name: '昨日销量',
      status: 3
    }, {
      name: '按时间',
      status: 4
    }],
    isPickMoney: false,//控制提现弹框
    isShowDate: false,//控制时间弹框
    itemList: [],
    startDate: moment(new Date()).format("YYYY-MM-DD"),
    endDate: moment(new Date()).format("YYYY-MM-DD"),
    balance: 0,//余额
    bondamt: 0,//保证金
    numTotal: 0,
    priceTotal: 0,

    currPage: 1,
    perPage: 7,
    noMore: false,//false 还有更多数据，true 到底了
    isEmpty: false,//true  无数据
  },

  getSupplier(isPage){//isPage=true下一页，isPage=false第一页
    let _this = this;
    if (!isPage) _this.setData({currPage: 1})
    app.requestUrl({
      method: 'GET',
      url: '/wxapi/supply/statistic',
      data: {
        supplyId: _this.data.user.supplier.id,
        centreId: app.globalData.loginCentreId,
        timeType: _this.data.tabList[_this.data.tabActive].status,
        type: 0,
        start: _this.data.startDate,
        end: _this.data.endDate,
        offset: (_this.data.currPage - 1) * _this.data.perPage,
        limit: _this.data.perPage
      },
      load: 1
    }).then(res =>{
      let salesTotal = res.data.data.salesTotal[0];
      let countList = res.data.data.countList.rows;

      if (isPage) {//下一页的数据拼接在原有数据后面
        _this.setData({
          itemList: _this.data.items.concat(countList)
        })
      } else { //第一页数据直接赋值
        _this.setData({
          itemList: countList,
          isEmpty: !countList.length > 0,
          noMore: false,
        })
      }
      //如果返回的数据为空，那么就没有下一页了
      if (countList.length == 0) {
        _this.setData({
          noMore: true,
        })
      }
      _this.setData({
        priceTotal: salesTotal ? (salesTotal.totalCostprice || 0) : 0,
        numTotal: salesTotal ? (salesTotal.total || 0) : 0,
        balance: res.data.data.balance || 0,
        bondamt: res.data.data.bondamt || 0,
      })
    })
  },

  //接收提现组件传值，控制弹框
  isPickMoneyCollect(event){
    this.setData({
      isPickMoney: event.detail
    })
  },
  //接收提现组件传值，改变余额
  userCollect(event){
    this.getSupplier(false);
  },
  //提现打开弹框
  pickMonitor(){
    this.setData({
      isPickMoney: true
    })
  },

  tabChange(event){
    let _this = this;
    _this.setData({
      tabActive: event.detail.index,
      startDate: moment(new Date()).format("YYYY-MM-DD"),
      endDate: moment(new Date()).format("YYYY-MM-DD"),
    })
    _this.getSupplier(false);
  },

  showDateClick(){
    this.setData({
      isShowDate: true,
    })
  },
  //接收时间
  collectDate(event){
    this.setData({
      isShowDate: false,
      startDate: event.detail.sta,
      endDate: event.detail.end,
    })
    this.getSupplier(false);
  },
  
  //余额明细
  toSupplierBalanceList(){
    wx.navigateTo({
      url: '/sub/user/supplier-balance-list/supplier-balance-list'
    })
  },


  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.setData({
      user: app.getUser(),
    })
    this.getSupplier(false);
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    let _this = this;
    _this.selectComponent('#cash-withdrawal').getBankList()
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    if (!this.data.noMore) {
      this.setData({
        currPage: this.data.currPage + 1
      })
      this.getSupplier(true)//传true代表进行下一页
    }
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})